Blockchain based banking identity authentication

ABSTRACT

Systems and methods are disclosed for interacting with a blockchain and users of the blockchain to perform banking identity authentication services. For example, a method may include receiving a bank transaction from a participant; verifying the bank transaction; generating and communicating a confirmation that the bank transaction is valid to the participant; adding the bank transaction to a block of bank transactions; generating a cryptographic hash for the block of bank transactions; solving a cryptographic puzzle involving the hash of the block of bank transactions; adding the block to the blockchain; and/or transmitting the solution to the cryptographic puzzle, and the block of bank transactions to another participant. Otherwise, if the identity data is not valid, generating and communicating the confirmation that the bank transaction is not valid to the participant.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority to (1) Provisional Application No.62/450,441, entitled “Using Blockchain for Banking, Asset, and IdentityServices” filed Jan. 25, 2017, (2) Provisional Application No.62/520,376, entitled “Blockchain Based Banking Identity Authentication,”filed Jun. 15, 2017, (3) Provisional Application No. 62/520,401,entitled “Blockchain Based Account Funding and Distribution,” filed Jun.15, 2017, (4) Provisional Application No. 62/520,648, entitled“Blockchain Based Card Activation,” filed Jun. 16, 2017, (5) ProvisionalApplication No. 62/520,708, entitled “Blockchain Based Passing RegistryActions,” filed Jun. 16, 2017, (6) Provisional Application No.62/523,523, entitled “Blockchain Based Asset Access,” filed Jun. 22,2017, (7) Provisional Application No. 62/528,791, entitled “BlockchainBased Lien Perfection,” filed Jul. 5, 2017, (8) Provisional ApplicationNo. 62/528,806, entitled “Blockchain Based Settlement Processes,” filedJul. 5, 2017, (9) Provisional Application No. 62/532,072, entitled“Blockchain Based Contractor Ratings,” filed Jul. 13, 2017, (10)Provisional Application No. 62/532,089, entitled “Blockchain BasedCustomer Records,” filed Jul. 13, 2017, and (11) Provisional ApplicationNo. 62/532,102, entitled “Blockchain Based Associate Information andLicensing,” filed Jul. 13, 2017, each of which is incorporated herein byreference in its entirety.

TECHNICAL FIELD

The present disclosure relates to using and accessing data stored in ablockchain. In particular, systems and methods are disclosed forinteracting with the blockchain and users of the blockchain to performbanking identity authentication services.

BACKGROUND

In the business world an interaction between a business and a customer,or the business and another business, typically requires validation ofone or more pieces of information before a transaction can take place.This validation is often achieved by the participants involved in theinteraction contacting a central authority that is a trusted source oftruth for the particular piece of information. The central authority maythen validate, or not validate the particular piece of information andcommunicate its findings to the participants. Based upon the validation,or lack of validation, a consensus among the participants is formed andassuming the information is valid the transaction between theparticipants may take place, and subsequently be recorded. Similarissues arise between citizens and their governments, and businesses andgovernments.

Traditionally, businesses, customers, and central authorities havestored information related to transactions, and records of transactions,in databases, or ledgers which have been used in accounting to tracktransactions and information related to those transactions. Often thesedatabases or ledgers held by the participants must be reconciled toachieve consensus as to the validity of the information stored in thedatabases and ledgers. Alternatively, as described above the centralauthority may be responsible for determining the validity of informationstored in a database or a ledger and functioning as an arbiter ofconsensus for interested parties.

A blockchain is a new way of achieving a distributed consensus on thevalidity or invalidity of information. As opposed to using a centralauthority, a blockchain is a distributed database or ledger, in which atransactional record is maintained at each node of a peer to peernetwork. Commonly, the distributed ledger is comprised of groupings oftransactions bundled together into a “block.” When a change to thedistributed ledger is made (e.g., when a new transaction and/or block iscreated), each node must form a consensus as to how the change isintegrated into the distributed ledger. Upon consensus, the agreed uponchange is pushed out to each node so that each node maintains anidentical copy of the updated distributed ledger. Any change that doesnot achieve a consensus is ignored. Accordingly, unlike a traditionalsystem which uses a central authority, a single party cannotunilaterally alter the distributed ledger. This inability to modify pasttransactions lead to blockchains being generally described as trusted,secure, and/or immutable.

Blockchains are typically deployed in an open, decentralized, andpermissionless manner meaning that any party may view information,submit new information, or join the blockchain as a node responsible forconfirming information. This open, decentralized, and permissionlessapproach to a blockchain has limitations. As an example, theseblockchains may not be good candidates for interactions that requireinformation to be kept private, or for interactions that require allparticipants to be vetted prior to their participation.

BRIEF SUMMARY

In one aspect, a computer-implemented method for manipulating andaccessing a blockchain containing identity authentication informationfor banking services maintained by a network of participants may beprovided. The method may include, via one or more processors, servers,and/or transceivers: (1) receiving, such as via wired communication, orwireless communication or data transmission over one or more radiofrequency links or communication channels, at least one bank transactionfrom at least one participant, wherein the at least one bank transactionincludes identity data for at least one person; (2) verifying the atleast one bank transaction, wherein verifying includes verifying theidentity data for the at least one person by checking the blockchain forthe identity data; and (3) if the identity data is valid, (i) generatingand communicating, such as via wired communication, or wirelesscommunication or data transmission over one or more radio frequencylinks or communication channels, a confirmation that the at least onebank transaction is valid to the at least one participant; (ii) addingthe bank transaction to a block of bank transactions; (iii) generating acryptographic hash for the block of bank transactions; (iv) solving acryptographic puzzle involving the hash of the block of banktransactions; (v) adding the block to the blockchain; and/or (vi)transmitting, such as via wired communication, or wireless communicationor data transmission over one or more radio frequency links orcommunication channels, the solution to the cryptographic puzzle, andthe block of bank transactions to at least one other participant; and/or(4) wherein if the identity data is not valid, generating andcommunicating the confirmation that the at least one bank transaction isnot valid to the at least one participant. The method may includeadditional, less, or alternate actions, including those discussedelsewhere herein.

In another aspect, a computer-implemented method for accessing ablockchain for identity authentication for banking services may beprovided. The method may include, via one or more processors,transceivers, and/or servers: (1) receiving, such as via wiredcommunication, or wireless communication or data transmission over oneor more radio frequency links or communication channels, at least onebank transaction from at least one participant, wherein the at leastbank one transaction includes identity data for at least one person; (2)verifying the at least one bank transaction, wherein verifying includesverifying the identity data for the at least one person by checking theblockchain for the identity data; and (3) wherein if the identity datais valid, (i) generating and communicating, such as via wiredcommunication, or wireless communication or data transmission over oneor more radio frequency links or communication channels, a confirmationthat the at least one bank transaction is valid to the at least oneparticipant; and (ii) transmitting, such as via wired communication, orwireless communication or data transmission over one or more radiofrequency links or communication channels, the at least one transactionto at least one other participant; and (4) wherein if the identity datais not valid, generating and communicating the confirmation that the atleast one bank transaction is not valid to the at least one participant.The method may include additional, less, or alternate actions, includingthose discussed elsewhere herein.

In yet another aspect, a computer system for manipulating and accessinga blockchain for identity authentication for banking services may beprovided. The system may include a memory configured to storenon-transitory computer executable instructions; and a processorconfigured to interface with the memory, wherein the processor isconfigured to execute non-transitory computer executable instructions.The non-transitory computer executable instructions may cause theprocessor to (1) receive, such as via wired communication, or wirelesscommunication or data transmission over one or more radio frequencylinks or communication channels, at least one bank transaction from atleast one participant, wherein the at least bank one transactionincludes identity data for at least one person; (2) validate the atleast one bank transaction, wherein verifying includes verifying theidentity data for the at least one person by checking, via theprocessor, the blockchain for the identity data, wherein the blockchainis stored in a memory coupled to the processor; and (3) wherein if theidentity data is valid, (i) generate and communicate, such as via wiredcommunication, or wireless communication or data transmission over oneor more radio frequency links or communication channels, a confirmationthat the at least one bank transaction is valid to the at least oneparticipant; (ii) add the bank transaction to a block of banktransactions; (iii) hash the block of bank transactions; (iv) solve acryptographic puzzle involving the hash of the block of banktransactions; (v) add the block to the blockchain stored in the memory;and/or (vi) transmit, such as via wired communication, or wirelesscommunication or data transmission over one or more radio frequencylinks or communication channels, the solution to the cryptographicpuzzle, and the block of bank transactions to at least one otherparticipant; and/or (4) wherein if the identity data is not valid,generate and communicate, such as via wired communication, or wirelesscommunication or data transmission over one or more radio frequencylinks or communication channels, the confirmation that the at least onebank transaction is not valid to the at least one participant. Thesystem may include additional, less, or alternate functionality,including that discussed elsewhere herein.

Advantages will become more apparent to those of ordinary skill in theart from the following description of the preferred aspects, which havebeen shown and described by way of illustration. As will be realized,the present aspects may be capable of other and different aspects, andtheir details are capable of modification in various respects.Accordingly, the drawings and description are to be regarded asillustrative in nature and not as restrictive.

BRIEF DESCRIPTION OF DRAWINGS

The figures described below depict various aspects of the system andmethods disclosed herein. It should be understood that each figuredepicts an embodiment of a particular aspect of the disclosed system andmethods, and that each of the figures is intended to accord with apossible embodiment thereof. Further, wherever possible, the followingdescription refers to the reference numerals included in the followingfigures, in which features depicted in multiple figures are designatedwith consistent reference numerals.

There are shown in the drawings arrangements which are presentlydiscussed, it being understood, however, that the present embodimentsare not limited to the precise arrangements and instrumentalities shown,wherein:

FIG. 1A depicts an exemplary database system 100 in accordance with oneaspect of the present disclosure;

FIG. 1B depicts an exemplary distributed ledger system 112 in accordancewith one aspect of the present disclosure;

FIG. 2A depicts an exemplary transaction flow 200 in accordance with oneaspect of the present disclosure;

FIG. 2B depicts an exemplary block propagation 210 in accordance withone aspect of the present disclosure;

FIG. 3 depicts an exemplary sequence diagram 300 in accordance with oneaspect of the present disclosure;

FIG. 4 depicts an exemplary node 400 in accordance with one aspect ofthe present disclosure;

FIG. 5 depicts an exemplary blockchain 500 in accordance with one aspectof the present disclosure;

FIG. 6 depicts an exemplary flow diagram 600 associated with one aspectof the present disclosure;

FIG. 7 depicts an exemplary flow diagram 700 associated with one aspectof the present disclosure;

FIG. 8 depicts an exemplary flow diagram 800 associated with one aspectof the present disclosure;

FIG. 9 depicts an exemplary flow diagram 900 associated with one aspectof the present disclosure;

FIG. 10 depicts an exemplary flow diagram 1000 associated with oneaspect of the present disclosure;

FIG. 11 depicts an exemplary flow diagram 1100 associated with oneaspect of the present disclosure;

FIG. 12 depicts an exemplary flow diagram 1200 associated with oneaspect of the present disclosure;

FIG. 13 depicts an exemplary flow diagram 1300 associated with oneaspect of the present disclosure;

FIG. 14 depicts an exemplary flow diagram 1400 associated with oneaspect of the present disclosure; and

FIG. 15 depicts an exemplary flow diagram 1500 associated with oneaspect of the present disclosure.

As stated, the Figures depict aspects of the present embodiments forpurposes of illustration only. One skilled in the art will readilyrecognize from the following discussion that alternate aspects of thestructures and methods illustrated herein may be employed withoutdeparting from the principles of the invention described herein.

DETAILED DESCRIPTION

The present embodiments relate to, inter alia, systems and methods forusing a blockchain to perform services related to banking, identitymanagement, and insurance applications. The systems and methodsdescribed herein allow for using a blockchain which gives the option forprivate information, and permissioned participants in the blockchain. Inparticular, the systems and methods allow for a distributed consensusamongst businesses, consumers, and authorities, as to the validity ofinformation and transactions stored on the blockchain. The businesses,authorities, and consumers may all be considered participants in theblockchain network. For example, businesses (e.g., banks, financialinstitutions, insurers), and their customers, as well as regulators, mayall be participants in the blockchain network, which may be open andpermissionless, or closed and permissioned. Each of these participantsmay maintain nodes that are part of the blockchain network, but may alsomaintain their own systems and networks that may interface with theblockchain network.

Some exemplary, but not limiting, applications that may take advantageof the disclosed systems and methods include specific applicationsdirected to banking, mutual funds, and insurance. These examples relateto problems surrounding money transfers, digital identities, andcollective reporting. Specifically, such applications may be: identityauthentication, account funding and distribution, card activation,actions trigged by death registry, using and accessing asset data lienperfection obtaining settlement values contractor ratings/evaluationssingle view of customer's products, associate licensing, using andaccessing user data, blockchain based payments, interest validation,industry reporting, agent sales data fund transfers, unclaimed property,auditing and compliance, policy delivery and interaction, and exercisingriders and form/rate filing.

The above listed examples, and disclosed systems and methods, may use anapplication of distributed ledgers, where each new block may becryptographically linked to the previous block in order to form a“blockchain.” More particularly, to create a new block, each transactionwithin a block may be assigned a hash value (i.e., an output of acryptographic hash function, such as SHA-256 or MD5). These hash valuesmay then be combined together utilizing cryptographic techniques (e.g.,a Merkle Tree) to generate a hash value representative of the entire newblock, and consequently the transactions stored in the block. This hashvalue may then be combined with the hash value of the previous block toform a hash value included in the header of the new block, therebycryptographically linking the new block to the blockchain. To this end,the precise value utilized in the header of the new block is dependenton the hash value for each transaction in the new block, as well as thehash value for each transaction in every prior block.

According to certain aspects disclosed herein, information stored inblockchains can be trusted, because the hash value generated for the newblock and a nonce value (an arbitrary number used once) are used asinputs into a cryptographic puzzle. The cryptographic puzzle may have adifficulty set by the nodes connected to the blockchain network, or thedifficulty may be set by administrators of the blockchain network. Inone example of the cryptographic puzzle, a solving node uses the hashvalue generated for the new block and repeatedly changes the value ofthe nonce until a solution for the puzzle is found. For example, findingthe solution to the cryptographic puzzle may involve finding the noncevalue that meets certain criteria (e.g., the nonce value begins withfive zeros).

When a solution to the cryptographic puzzle is found, the solving nodepublishes the solution and the other nodes then verify that the solutionis the correct solution. Because the solution also depends on theparticular hash values for each transaction within the blockchain, ifthe solving node attempted to modify any transaction, the solution wouldnot be verified by the other nodes. More particularly, if a single nodeattempts to modify a prior transaction within the blockchain, a cascadeof different hash values are generated for each tier of thecryptographic combination technique. This results in the header for oneor more blocks being different than the corresponding header(s) in everyother node that did not make the exact same modification.

As a result, the solution generated by the modifying node would notsolve the cryptographic puzzle presented to any node without theidentical modification. Thus, the version of the new block generated bythe modifying node is readily recognized as including an impropermodification and is rejected by the consensus. This inability to modifypast transactions lead to blockchains being generally described astrusted, secure, and/or immutable.

The systems and methods disclosed herein also include performing actionsutilizing the distributed consensus achieved through the blockchain. Inparticular, these actions may be executed by smart contracts. A smartcontract is a computer protocol that enables the automatic executionand/or enforcement of an agreement between different parties. The smartcontract may include one or more trigger conditions, that, whensatisfied, correspond to one or more actions. For some smart contracts,which action(s) from the one or more actions are performed is determinedbased upon one or more decision conditions. Nodes on the network maysubscribe to one or more data streams including data related to atrigger condition and/or a decision condition. Accordingly, the nodesmay route the data streams to the smart contract so that the smartcontract may detect that a trigger condition has occurred and/or analyzea decision condition to direct the node to perform one or more actions.

Exemplary Database & Distributed Ledger

FIG. 1A depicts an exemplary database system 100 in accordance with oneaspect of the present disclosure. FIG. 1A includes a central authority102, a plurality of nodes 104A, 104B, and 106, a central ledger 108, anda plurality of network connections 110. In one example operation of thedatabase system 100, one of the nodes, for example Node A 104A, wouldissue a request to the central authority 102 to perform an action ondata stored in the central ledger 108. This request may be a request tocreate, read, update, or delete data that is stored in the centralledger 108.

The central authority 102 would receive the request, processes therequest, make any necessary changes to the data stored in the centralledger 108, and inform the requesting node, Node A 104A, of the statusof the request. The central authority 102 may also send out statusupdates to the other nodes on the network about the change made, if any,to the data as requested by Node A 104A. In the database system 100, allinteraction with the data stored in the central ledger 108 occursthrough the central authority 102. In this way, the central authorityfunctions as a gatekeeper of the data.

Accordingly, the central authority 102 operates a single point of entryfor interacting with the data, and consequently the central authority102 is a single point of failure for the entire database system 100. Assuch, if the central authority 102 is not accessible to the nodes in thedatabase system 100, then the data stored in the central ledger 108 isnot accessible. In another example, each individual node may keep theirown databases and then at the end of the day each node sends a copy oftheir database to the central authority 102 where the databases receivedare reconciled to form a single cohesive record of the data stored inthe central ledger 108.

Conversely, FIG. 1B depicts an exemplary distributed ledger system 112in accordance with one aspect of the present disclosure. An example of adistributed ledger system 112 is the blockchain system described above.FIG. 1B includes a plurality of nodes 104A, 104B, and 106, a distributedledger 114, and network connections 110. In a distributed ledger system112, each node keeps a copy of the distributed ledger 114. As changesare made to the distributed ledger 114 each node updates their copy ofthe distributed ledger 114. A consensus mechanism may be used by thenodes in the distributed ledger system 112 to decide when it isappropriate to make changes to the distributed ledger 114.

Therefore, each node has their own copy of the distributed ledger 114,which is identical to every other copy of the distributed ledger 114stored by each other node. The distributed ledger system 112 is morerobust than a central authority database system, which is depicted inFIG. 1A, because the distributed ledger system 112 is decentralized andthere is no single point of failure.

Exemplary Transaction Flow & Block Propagation

FIG. 2A depicts an exemplary transaction flow 200 in accordance with oneaspect of the present disclosure. FIG. 2A includes a transaction 202,three different time frames 204, 206, and 208, a set of nodes, networkconnections 110, and a distributed ledger 114. The transaction flow 200may represent a sequential flow of a transaction through a network, suchas the network depicted in FIG. 1B. For example, at time 204 Node A 104Agenerates a transaction 202.

The transaction 202 may use data that is stored in the distributedledger 114, or the transaction 202 may use data received by the nodefrom outside the distributed ledger 114. Node A 104A may transmit thenewly generated transaction to Node C 106 via the network connection110. At time 206, Node C 106 receives the transaction 202 and confirmsthat the information contained therein is correct. If the informationcontained in the transaction 202 is not correct Node C 106 may rejectthe transaction and not propagate the transaction 202 through thesystem. If the information contained in the transaction 202 is correctNode C 106 may transmit the transaction 202 to its neighbor Node B 104B.

Similarly, at time 208 Node B 104B may receive the transaction 202 andeither confirm or reject the transaction 202. In some embodiments, theNode B 104B may not transmit the confirmed transaction 202, becausethere are no further nodes to transmit to, or all the nodes in thenetwork have already received transaction 202.

In some embodiments, at any of time frames 204, 206, or 208, any of thenodes may add the confirmed transaction 202 to their copy of thedistributed ledger 114, or to a block of transactions stored in thedistributed ledger. In some embodiments, confirming the transaction 202includes checking a cryptographic key-pair for participants involved inthe transaction 202. Checking the cryptographic key-pair may follow aset method laid out by a consensus protocol, such as the consensusprotocol discussed in FIG. 1B.

FIG. 2B depicts an exemplary block propagation 210 in accordance withone aspect of the present disclosure. FIG. 2B includes two time frames212 and 214, Node C 106 and Node B 104B, a set of transactions202A-202D, a set of blocks of transactions 216A-216D, a distributedledger 114, and a blockchain 218. The block propagation 210 may followthe blockchain system described above, or may follow another blockchainpropagation algorithm.

The block propagation 210 may begin with Node C 106 receivingtransaction 202A at time 212. When Node C 106C confirms that transaction202A is valid, the node may add the transaction to a newly generatedblock 216. As part of adding the transaction 202A to block 216, Node C106 may solve a cryptographic puzzle and include the solution in thenewly generated block 216 as proof of the work done to generate theblock 216. This proof of work may be similar to the proof of workdescribed above which utilizes guessing a nonce value. In otherembodiments, the transaction 202A may be added to a pool of transactionsuntil enough transactions exist to add together to create a block. NodeC 106 may transmit the newly created block 216 to the network at 220.Before or after propagating the block 216, Node C 106 may add the block216 to its copy of the blockchain 218.

At time 214 Node B 104B may receive the newly created block 216. Node B104B may verify that the block of transactions 216 is valid by checkingthe solution to the cryptographic puzzle provided in the block 216. Ifthe solution is accurate then Node B 104B may add the block 216 to itsblockchain 218 and transmit the block 216 to the rest of the network at222.

Exemplary Sequence Diagram

FIG. 3 depicts an exemplary sequence diagram 300 in accordance with oneaspect of the present disclosure. FIG. 3 includes a set of nodes 104A,104B, and 106. At 302, Node A 104A may generate a transaction. Thetransaction may be transmitted from Node A 104A to Node C 106 at 304.Node C 106 may validate the transaction at 306, and if the transactionis valid, transmit the transaction at 308 to Node B 104B. Node B 104Bmay validate the transaction at 310. At 312, Node C 106 may compile ablock at 312 including the validated transaction. Compiling a block mayinclude generating a solution to a cryptographic puzzle, and linking theblock to other blocks, as described in the embodiments above. Once theblock is compiled, Node C 106 may transmit the block with the solutionat 314 to both Node A 104A and Node B 104B.

Both nodes may then validate the solution to the block at 316. Verifyingmay include checking a cryptographic key-pair as described above. At 318the three nodes form a consensus that the solution is valid, andaccordingly all the nodes have formed a consensus on the blocks oftransactions stored by all the nodes.

Exemplary Node

FIG. 4 depicts an exemplary node 400 in accordance with one aspect ofthe present disclosure. In some embodiments, node 400 may be the sametype of node as Node C 106 in FIGS. 1A-3. In other embodiments, node 400may be the same type of node as Node A 104A and Node B 104B in FIGS.1A-3. Node 400 may be capable of performing all the embodimentsdisclosed herein. In particular, node 400 may utilize the decentralizedsystem described in FIG. 1B, the flows of transactions and blocksdescribed in FIGS. 2A and 2B, and the blockchain system 500 describedbelow in FIG. 5.

FIG. 4 includes at least one processor 402, memory 404, a communicationmodule 406, a set of applications 408, external ports 410, userinterface 412, a blockchain manager 414, smart contracts 416, operatingsystem 418, a display screen 420, and input/output components 422. Insome embodiments, the node 400 may generate a new block of transactionsby using the blockchain manager 414. Similarly, the node 400 may use theblockchain manager 414 in conjunction with the smart contracts 416stored in memory 404 to execute the functionality disclosed herein.

In other embodiments, the smart contracts 416 operate independent of theblockchain manager 414 or other applications. In some embodiments, node400 does not have a blockchain manager 414, or smart contracts 416stored at the node. In some embodiments, the node 400 may haveadditional or less components than what is described. The components ofthe node 400 are described in more detail below.

The node 400, as part of a decentralized ledger system 112, or anotherdecentralized or centralized network, may be used to handle systems thatinteract with and manipulate data and transactions designed for bankingidentity authentication, banking account funding and distribution,banking card activation, actions triggered by a death registry, usingand accessing asset data, lien perfection, obtaining settlement values,contractor ratings, single view of customer's products, and associatelicensing.

Exemplary Blockchain System

FIG. 5 depicts an exemplary blockchain system 500 in accordance with oneaspect of the present disclosure. FIG. 5 includes a blockchain 502, ablock of transactions 504, a Merkle Tree 506, and a transaction 508. TheMerkle Tree may be the same Merkle Tree described above thatcryptographically links transactions together. In other embodiments, theblockchain system 500 may utilize a different method of organizingtransactions in a block. In some embodiments, the blockchain system 500includes a plurality of blocks connected together to form a chain ofblocks of transactions 502.

Each block of transactions 504 may include at least one transaction 508.In other embodiments, each block of transactions 504 has a size limitthat necessarily limits the number of transactions that the block maystore. Each block of transactions 504 includes a reference to a previousblock of transactions that was added to the blockchain 502 prior to theblock of transactions 504 being added to the blockchain 502. As such,and as described above, each block of transactions 504 is linked toevery other block in the blockchain 502.

In some embodiments, the block of transactions 504 may organize thetransactions it has received into a Merkle Tree 506 to facilitate accessto the stored transactions. The transactions may be hashed using acryptographic hash algorithm, such as the algorithms discussed above,and the hash of each transaction is stored in the tree. As the tree isconstructed the hash of each adjacent node is hashed together to createa new node that exists at a higher level in the tree. Therefore, theroot of the tree, or the node at the top of the tree, is dependent uponthe hash of each transaction stored in the tree. Each transaction 508may include a set of data 510. The set of data 510 may includeidentifying data for the transaction, and transaction data identifyingthe nature of the transaction and what the transactions entails.

Exemplary Banking Identity Authentication

FIG. 6 depicts an exemplary flow diagram 600 for a computer-implementedmethod for manipulating and accessing a blockchain containing identityauthentication information for banking services maintained by a networkof participants. In some embodiments, the network of participants may bethe nodes described above, for example node 400 depicted in FIG. 4. Theblockchain used by the participants may be the blockchain 500 depictedin FIG. 5, whose operation is described in FIGS. 2A, 2B, and 5. Thesteps of the computer-implemented method 600 may be performed by thenodes in the network of participants, such as the nodes described inFIGS. 1A-4. The method 600 may include additional, fewer, or alternativeactions, including those described elsewhere herein.

The systems and methods described herein may help an individual and abank manage the identity authentication process required for openingfinancial accounts, and conducting financial transactions. For example,when a customer opens an account with a bank the customer's informationneeds to be validated by the bank. The customer may need to provideproof of who they are to the bank, so that the bank may comply withanti-money laundering regulations, and know your customer regulations.This information may be used to onboard the customer (e.g., open a newaccount), and/or the information may be used as part of the ongoingrelationship the customer has with the bank. Additionally, when thecustomer interacts with other merchants the customer may need to provideinformation pertaining to their relationship with their bank to themerchant, which can be cumbersome and slow depending on how the customerinformation is stored by the bank. If, however, the information aboutthe customer, and the customer's relationship to the bank, was stored ona blockchain network, participants on that network may be able to moreeasily access the needed information. In some embodiments, the bank maymaintain/store information about its customers on a blockchain network.That is, the bank may store customer information on a blockchain networkin the form of transactions, and update the customer information asneeded via subsequent transactions. Similarly, the customer, or anotherbusiness, may access the information on the blockchain if they have thenecessary access level, e.g., permissions.

The computer-implemented method depicted in the exemplary flow diagram600 may include (1) receiving at least one bank transaction from atleast one participant (block 602), such as via wired communication, orwireless communication or data transmission over one or more radiofrequency links or communication channels; (2) verifying the at leastone bank transaction (block 604); (3) when the transaction is not valid,generating and communicating (such as via wired communication, orwireless communication or data transmission over one or more radio linksor communication channels) a confirmation that the bank transaction isnot valid (block 606); or (4) alternatively, when the transaction isvalid, adding the bank transaction to a block of transactions (block608); (5) generating a cryptographic hash for the block of banktransactions (block 610); (6) solving a cryptographic puzzle involvingthe generated hash (block 612); (7) adding the block to the blockchain(block 614); and/or (8) transmitting the block to at least one otherparticipant (block 616).

In some embodiments, the at least one bank transaction includes identitydata for at least one person. The identity data may include personallyidentifiable information for the at least one person. Examples ofidentity data may include a person's full name, a person's addressinformation, a person's age, or other identifying information about theperson. The bank transactions themselves may include creating/closingaccounts for the customer, sending/receiving funds at an account for thecustomer, changing details about the account for the customer, andcombinations thereof.

In some embodiments, verifying further includes checking an access levelfor the identity data prior to checking the blockchain for the identitydata, wherein the access level is set by the at least one person. Inother embodiments, verifying further includes checking a public-privatekey pair for the at least one participant involved in the at least onebank transaction; and when the public-private key pair is invalid, notverifying the at least one bank transaction.

In some embodiments of the computer-implemented method, the block oftransactions has metadata, and wherein generating the cryptographic hashfurther includes generating a hash of the metadata for the block oftransactions; and adding the hash for the metadata to the block of banktransactions.

In some embodiments, the cryptographic puzzle has a difficulty assignedto it by a participant in the blockchain network, a group ofparticipants in the blockchain network, an administrator of theblockchain network, or some combination thereof.

In some embodiments of the method when the identity data is not storedin the blockchain, verifying the identity data, at the processor coupledto the network interface, by transmitting a verification request for theidentity data to at least one other participant; adding when theidentity is verified by the at least one other participant, the identitydata to the blockchain, and when the identity information is notverified, communicating a rejection to the at least one participant.

In other embodiments of the method creating a cryptographic hash andsolving a cryptographic puzzle are not necessary. For example, thecomputer-implemented method includes receiving at least one banktransaction from at least one participant, wherein the at least bank onetransaction includes identity data for at least one person; verifyingthe at least one bank transaction, wherein verifying includes verifyingthe identity data for the at least one person by checking the blockchainfor the identity data; and wherein if the identity data is valid,generating and communicating a confirmation that the at least one banktransaction is valid to the at least one participant; transmitting theat least one transaction to at least one other participant; and whereinif the identity data is not valid, generating and communicating theconfirmation that the at least one bank transaction is not valid to theat least one participant.

Exemplary Banking Account Funding and Distribution

FIG. 7 depicts an exemplary flow diagram 700 for a computer-implementedmethod for account funding and distribution using smart contracts storedon a blockchain maintained by a plurality of participants. In someembodiments, the network of participants may be the nodes describedabove, for example node 400 depicted in FIG. 4. The blockchain used bythe participants may be the blockchain 500 depicted in FIG. 5, whoseoperation is described in FIGS. 2A, 2B, and 5. The steps of the method700 may be performed by the nodes in the network of participants, suchas the nodes described in FIGS. 1A-4. The method 700 may includeadditional, fewer, or alternative actions, including those describedelsewhere herein.

The exemplary flow diagram 700 includes receiving, at a processorcoupled with a network interface, at least one transaction from at leastone participant, wherein the at least one transaction has a set ofparameters (block 702). Verifying, at the processor, the at least onetransaction, wherein verifying includes accessing a smart contractstored on the blockchain and checking the set of parameters against aset of conditions stored in the smart contract (block 704). And, whenthe set of parameters satisfy the set of conditions, indicating, at theprocessor, a change in a fund balance for the at least one participant(block 706), and generating and transmitting, via the processor coupledwith the network interface, a confirmation to the at least oneparticipant that the transaction has been approved (block 708). And,when the set of parameters do not satisfy the set of conditions,generating and transmitting, via the processor coupled with the networkinterface, a rejection to the at least one participant that thetransaction has been rejected (block 710).

Exemplary Banking Card Activation

FIG. 8 depicts an exemplary flow diagram 800 for a computer-implementedmethod for credit card activation using a smart contract stored on ablockchain maintained by a plurality of participants. In someembodiments, the network of participants may be the nodes describedabove, for example node 400 depicted in FIG. 4. The blockchain used bythe participants may be the blockchain 500 depicted in FIG. 5, whoseoperation is described in FIGS. 2A, 2B, and 5. The steps of the method800 may be performed by the nodes in the network of participants, suchas the nodes described in FIGS. 1A-4. The method 800 may includeadditional, fewer, or alternative actions, including those describedelsewhere herein.

The exemplary flow diagram 800 includes receiving, at a processor, atleast one credit card application package associated with a credit card,wherein the credit card application package includes credit cardinformation and a set of user information (block 802). Verifying, at theprocessor, the credit card information and the set of user information(block 804). Checking, at the processor, the credit card information andthe set of user information against the smart contract stored on theblockchain, wherein the smart contract includes a set of conditions(block 806). Activating, at the processor, the credit card when thecredit card information and the set of user information satisfy the setof conditions stored in the smart contract (block 808).

Exemplary Actions Triggered by a Passing Registry

FIG. 9 depicts an exemplary flow diagram 900 for a computer-implementedmethod for performing actions designated in smart contracts, stored on ablockchain maintained by a plurality of participants, based uponnotification of a person's death or passing. In some embodiments, thenetwork of participants may be the nodes described above, for examplenode 400 depicted in FIG. 4. The blockchain used by the participants maybe the blockchain 500 depicted in FIG. 5, whose operation is describedin FIGS. 2A, 2B, and 5. The steps of the method 900 may be performed bythe nodes in the network of participants, such as the nodes described inFIGS. 1A-4. The method 900 may include additional, fewer, or alternativeactions, including those described elsewhere herein.

The exemplary flow diagram 900 includes receiving, at a processorcoupled with a network interface, at least one passing or death registrynotification, wherein the passing or death registry notification has aset of personal information (block 902). Verifying, at the processor,the passing or death registry notification and the set of personalinformation (block 904). Accessing, at the processor, a set of documentsrelevant to the set of personal information (block 906). Generating, atthe processor, a passing or death registry action based upon the set ofdocuments, the set of personal information, and the passing or deathregistry notification (block 908). Checking, at the processor, thepassing or death registry action against a smart contract stored on theblockchain, wherein the set of documents has a set of conditions (block910). Executing, at the processor, the passing or death registry actionwhen the passing or death registry action satisfies the set ofconditions (block 912).

Exemplary Using and Accessing Asset Data

FIG. 10 depicts an exemplary flow diagram 1000 for acomputer-implemented method for using and accessing asset data stored ona blockchain maintained by a plurality of participants. In someembodiments, the network of participants may be the nodes describedabove, for example node 400 depicted in FIG. 4. The blockchain used bythe participants may be the blockchain 500 depicted in FIG. 5, whoseoperation is described in FIGS. 2A, 2B, and 5. The steps of the method1000 may be performed by the nodes in the network of participants, suchas the nodes described in FIGS. 1A-4. The method 1000 may includeadditional, fewer, or alternative actions, including those describedelsewhere herein.

The exemplary flow diagram 1000 may include receiving, at a processorcoupled to a network interface, at least one request from at least oneuser for asset data stored on the blockchain, wherein the requestincludes a set of request parameters (block 1002). Analyzing, at theprocessor, the at least one request to determine a type of request(block 1004). Accessing, at the processor, the asset data stored on theblockchain based upon the type of request and the set of requestparameters (block 1006). Performing, at the processor, an actioninvolving the asset data based upon the request (block 1008).Communicating, via the processor coupled to the network interface, tothe at least one user that the action was performed involving the assetdata (block 1010).

Exemplary Lien Perfection

FIG. 11 depicts an exemplary flow diagram 1100 for acomputer-implemented method for lien perfection using smart contractsstored on a blockchain maintained by a plurality of participants. Insome embodiments, the network of participants may be the nodes describedabove, for example node 400 depicted in FIG. 4. The blockchain used bythe participants may be the blockchain 500 depicted in FIG. 5, whoseoperation is described in FIGS. 2A, 2B, and 5. The steps of the method1100 may be performed by the nodes in the network of participants, suchas the nodes described in FIGS. 1A-4. The method 1100 may includeadditional, fewer, or alternative actions, including those describedelsewhere herein.

The exemplary flow diagram 1100 includes receiving, at a processorcoupled with a network interface, at least one security interestnotification, wherein the security interest notification has a set oflienholder information for an asset (block 1102). Verifying, at theprocessor, the security interest notification and the set of lienholderinformation (block 1104). Accessing, at the processor, a smart contractstored on the blockchain, wherein the smart contract has a set ofconditions which indicate at least a priority process (block 1106).Executing, at the processor, the priority process when the set ofconditions are satisfied by the security interest notification and theset of lienholder information (block 1108). Generating, at theprocessor, a transaction containing the security interest (block 1110).Communicating, via the processor coupled with the network interface, thetransaction to the network of participants (block 1112).

Exemplary Obtaining Settlement Values

FIG. 12 depicts an exemplary flow diagram 1200 for acomputer-implemented method for obtaining settlement values for a set oflienholders with a security interest in an asset stored on a blockchainmaintained by a plurality of participants using smart contracts. In someembodiments, the network of participants may be the nodes describedabove, for example node 400 depicted in FIG. 4. The blockchain used bythe participants may be the blockchain 500 depicted in FIG. 5, whoseoperation is described in FIGS. 2A, 2B, and 5. The steps of the method1200 may be performed by the nodes in the network of participants, suchas the nodes described in FIGS. 1A-4. The method 1200 may includeadditional, fewer, or alternative actions, including those describedelsewhere herein.

The exemplary flow diagram 1200 includes receiving, at a processorcoupled with a network interface, at least one foreclosure notificationfor at least one asset stored on a blockchain, wherein the at least oneforeclosure notification includes at least one request for a set ofsettlement values from one of the plurality of participants (block1202). Verifying, at the processor, the at least one foreclosurenotification (block 1204). Accessing, at the processor, the at least oneasset stored on the blockchain, wherein the asset has a set oflienholder information and a smart contract priority process, whereinthe smart contract priority process indicates the settlement values foreach member of the set of lienholders (block 1206). Executing, at theprocessor, the smart contract priority process to recalculate anddistribute the settlement values for each member of the set oflienholders (block 1208). Communicating and distributing, via theprocessor coupled with the network interface, the recalculatedsettlement values to the at least one plurality of participants thatrequested the set of settlement values (block 1210).

Exemplary Contractor Ratings

FIG. 13 depicts an exemplary flow diagram 1300 for acomputer-implemented method for using and accessing contractorevaluations stored on a blockchain maintained by a plurality ofparticipants In some embodiments, the network of participants may be thenodes described above, for example node 400 depicted in FIG. 4. Theblockchain used by the participants may be the blockchain 500 depictedin FIG. 5, whose operation is described in FIGS. 2A, 2B, and 5. Thesteps of the method 1300 may be performed by the nodes in the network ofparticipants, such as the nodes described in FIGS. 1A-4. The method 1300may include additional, fewer, or alternative actions, including thosedescribed elsewhere herein.

The exemplary flow diagram 1300 includes receiving, at a processorcoupled to a network interface, at least one contractor evaluation for acontractor from at least one participant of the plurality ofparticipants, wherein the at least one contractor evaluation includes anevaluation, an evaluationer, and a set of contractor information (block1302). Verifying, at the processor, the evaluation, the evaluationer,and the set of contractor information (block 1304). Verifying, at theprocessor, that the set of contractor information is stored on theblockchain (block 1306). When the set of contractor information isstored on the blockchain, generating, at the processor, a transactioninvolving the set of contractor information and the evaluation (block1308), and when the set of contractor information is not stored on theblockchain, generating, at the processor, a transaction involving theset of contractor information and the evaluation (block 1310).Transmitting, via the processor coupled to the network interface, thetransaction to the plurality of participants (block 1312).

Exemplary Single View of Customer's Products

FIG. 14 depicts an exemplary flow diagram 1400 for acomputer-implemented method for using and accessing customer informationstored on a blockchain maintained by a plurality of participants. Insome embodiments, the network of participants may be the nodes describedabove, for example node 400 depicted in FIG. 4. The blockchain used bythe participants may be the blockchain 500 depicted in FIG. 5, whoseoperation is described in FIGS. 2A, 2B, and 5. The steps of the method1400 may be performed by the nodes in the network of participants, suchas the nodes described in FIGS. 1A-4. The method 1400 may includeadditional, fewer, or alternative actions, including those describedelsewhere herein.

The exemplary flow diagram 1400 includes receiving, at a processorcoupled to a network interface, at least one customer request forcustomer information stored on the blockchain from at least oneparticipant of the plurality of participants (block 1402). Verifying, atthe processor, the customer information request (block 1404). Verifying,at the processor, that the customer information is stored on theblockchain (block 1406), and when the customer information is stored onthe blockchain generating, at the processor, a customer informationaction and transaction (block 1408), and when the customer informationis not stored on the blockchain, generating, at the processor, atransaction involving the customer information request (block 1410).Transmitting, via the processor coupled to the network interface, thetransaction to the plurality of participants (block 1412).

Exemplary Associate Information and Licensing

FIG. 15 depicts an exemplary flow diagram 1500 for acomputer-implemented method for using and accessing associate datastored on a blockchain maintained by a plurality of participants In someembodiments, the network of participants may be the nodes describedabove, for example node 400 depicted in FIG. 4. The blockchain used bythe participants may be the blockchain 500 depicted in FIG. 5, whoseoperation is described in FIGS. 2A, 2B, and 5. The steps of the method1500 may be performed by the nodes in the network of participants, suchas the nodes described in FIGS. 1A-4. The method 1500 may includeadditional, fewer, or alternative actions, including those describedelsewhere herein.

The exemplary flow diagram 1500 includes receiving, at a processorcoupled to a network interface, at least one associate request, theassociate request having an associate request type, from at least oneparticipant of the plurality of participants for information on anassociate stored on the blockchain, wherein the at least one associaterequest includes associate identifying information, associate salesdata, and associate licensing data (block 1502). Verifying, at theprocessor, the associate request based upon the associate request type(block 1504). Verifying, at the processor, that the associateinformation is stored on the blockchain (block 1506). When the associateinformation is stored on the blockchain, generating, at the processor, atransaction corresponding to the associate request type (block 1508),and when the associate information is not stored on the blockchain,generating, at the processor, a transaction involving the associateidentifying information, associate sales data, and associate licensingdata (block 1510). Transmitting, via the processor coupled to thenetwork interface, the transaction to the plurality of participants(block 1512).

Additional Considerations

This detailed description is to be construed as exemplary only and doesnot describe every possible embodiment, as describing every possibleembodiment would be impractical, if not impossible. One may be implementnumerous alternate embodiments, using either current technology ortechnology developed after the filing date of this application.

Further to this point, although the embodiments described herein oftenutilize credit report information as an example of sensitiveinformation, the embodiments described herein are not limited to suchexamples. Instead, the embodiments described herein may be implementedin any suitable environment in which it is desirable to identify andcontrol specific type of information. For example, the aforementionedembodiments may be implemented by a financial institution to identifyand contain bank account statements, brokerage account statements, taxdocuments, etc. To provide another example, the aforementionedembodiments may be implemented by a lender to not only identify,re-route, and quarantine credit report information, but to apply similartechniques to prevent the dissemination of loan application documentsthat are preferably delivered to a client for signature in accordancewith a more secure means (e.g., via a secure login to a web server) thanvia email.

Furthermore, although the present disclosure sets forth a detaileddescription of numerous different embodiments, it should be understoodthat the legal scope of the description is defined by the words of theclaims set forth at the end of this patent and equivalents. The detaileddescription is to be construed as exemplary only and does not describeevery possible embodiment since describing every possible embodimentwould be impractical. Numerous alternative embodiments may beimplemented, using either current technology or technology developedafter the filing date of this patent, which would still fall within thescope of the claims. Although the following text sets forth a detaileddescription of numerous different embodiments, it should be understoodthat the legal scope of the description is defined by the words of theclaims set forth at the end of this patent and equivalents. The detaileddescription is to be construed as exemplary only and does not describeevery possible embodiment since describing every possible embodimentwould be impractical. Numerous alternative embodiments may beimplemented, using either current technology or technology developedafter the filing date of this patent, which would still fall within thescope of the claims.

The following additional considerations apply to the foregoingdiscussion. Throughout this specification, plural instances mayimplement components, operations, or structures described as a singleinstance. Although individual operations of one or more methods areillustrated and described as separate operations, one or more of theindividual operations may be performed concurrently, and nothingrequires that the operations be performed in the order illustrated.Structures and functionality presented as separate components in exampleconfigurations may be implemented as a combined structure or component.Similarly, structures and functionality presented as a single componentmay be implemented as separate components. These and other variations,modifications, additions, and improvements fall within the scope of thesubject matter herein.

Additionally, certain embodiments are described herein as includinglogic or a number of routines, subroutines, applications, orinstructions. These may constitute either software (e.g., code embodiedon a machine-readable medium or in a transmission signal) or hardware.In hardware, the routines, etc., are tangible units capable ofperforming certain operations and may be configured or arranged in acertain manner. In exemplary embodiments, one or more computer systems(e.g., a standalone, client or server computer system) or one or morehardware modules of a computer system (e.g., a processor or a group ofprocessors) may be configured by software (e.g., an application orapplication portion) as a hardware module that operates to performcertain operations as described herein.

In various embodiments, a hardware module may be implementedmechanically or electronically. For example, a hardware module maycomprise dedicated circuitry or logic that is permanently configured(e.g., as a special-purpose processor, such as a field programmable gatearray (FPGA) or an application-specific integrated circuit (ASIC)) toperform certain operations. A hardware module may also compriseprogrammable logic or circuitry (e.g., as encompassed within ageneral-purpose processor or other programmable processor) that istemporarily configured by software to perform certain operations. Itwill be appreciated that the decision to implement a hardware modulemechanically, in dedicated and permanently configured circuitry, or intemporarily configured circuitry (e.g., configured by software) may bedriven by cost and time considerations.

Accordingly, the term “hardware module” should be understood toencompass a tangible entity, be that an entity that is physicallyconstructed, permanently configured (e.g., hardwired), or temporarilyconfigured (e.g., programmed) to operate in a certain manner or toperform certain operations described herein. Considering embodiments inwhich hardware modules are temporarily configured (e.g., programmed),each of the hardware modules need not be configured or instantiated atany one instance in time. For example, where the hardware modulescomprise a general-purpose processor configured using software, thegeneral-purpose processor may be configured as respective differenthardware modules at different times. Software may accordingly configurea processor, for example, to constitute a particular hardware module atone instance of time and to constitute a different hardware module at adifferent instance of time.

Hardware modules may provide information to, and receive informationfrom, other hardware modules. Accordingly, the described hardwaremodules may be regarded as being communicatively coupled. Where multipleof such hardware modules exist contemporaneously, communications may beachieved through signal transmission (e.g., over appropriate circuitsand buses) that connect the hardware modules. In embodiments in whichmultiple hardware modules are configured or instantiated at differenttimes, communications between such hardware modules may be achieved, forexample, through the storage and retrieval of information in memorystructures to which the multiple hardware modules have access. Forexample, one hardware module may perform an operation and store theoutput of that operation in a memory device to which it iscommunicatively coupled. A further hardware module may then, at a latertime, access the memory device to retrieve and process the storedoutput. Hardware modules may also initiate communications with input oroutput devices, and may operate on a resource (e.g., a collection ofinformation).

The various operations of example methods described herein may beperformed, at least partially, by one or more processors that aretemporarily configured (e.g., by software) or permanently configured toperform the relevant operations. Whether temporarily or permanentlyconfigured, such processors may constitute processor-implemented modulesthat operate to perform one or more operations or functions. The modulesreferred to herein may, in some example embodiments, compriseprocessor-implemented modules.

Similarly, the methods or routines described herein may be at leastpartially processor-implemented. For example, at least some of theoperations of a method may be performed by one or more processors orprocessor-implemented hardware modules. The performance of certain ofthe operations may be distributed among the one or more processors, notonly residing within a single machine, but deployed across a number ofmachines. In some example embodiments, the processor or processors maybe located in a single location (e.g., within a home environment, anoffice environment or as a server farm), while in other embodiments theprocessors may be distributed across a number of locations.

The performance of certain of the operations may be distributed amongthe one or more processors, not only residing within a single machine,but deployed across a number of machines. In some example embodiments,the one or more processors or processor-implemented modules may belocated in a single geographic location (e.g., within a homeenvironment, an office environment, or a server farm). In other exampleembodiments, the one or more processors or processor-implemented modulesmay be distributed across a number of geographic locations.

Unless specifically stated otherwise, discussions herein using wordssuch as “processing,” “computing,” “calculating,” “determining,”“presenting,” “displaying,” or the like may refer to actions orprocesses of a machine (e.g., a computer) that manipulates or transformsdata represented as physical (e.g., electronic, magnetic, or optical)quantities within one or more memories (e.g., volatile memory,non-volatile memory, or a combination thereof), registers, or othermachine components that receive, store, transmit, or displayinformation.

As used herein any reference to “one embodiment” or “an embodiment”means that a particular element, feature, structure, or characteristicdescribed in connection with the embodiment is included in at least oneembodiment. The appearances of the phrase “in one embodiment” in variousplaces in the specification are not necessarily all referring to thesame embodiment.

Some embodiments may be described using the expression “coupled” and“connected” along with their derivatives. For example, some embodimentsmay be described using the term “coupled” to indicate that two or moreelements are in direct physical or electrical contact. The term“coupled,” however, may also mean that two or more elements are not indirect contact with each other, but yet still co-operate or interactwith each other. The embodiments are not limited in this context.

As used herein, the terms “comprises,” “comprising,” “includes,”“including,” “has,” “having” or any other variation thereof, areintended to cover a non-exclusive inclusion. For example, a process,method, article, or apparatus that comprises a list of elements is notnecessarily limited to only those elements but may include otherelements not expressly listed or inherent to such process, method,article, or apparatus. Further, unless expressly stated to the contrary,“or” refers to an inclusive or and not to an exclusive or. For example,a condition A or B is satisfied by any one of the following: A is true(or present) and B is false (or not present), A is false (or notpresent) and B is true (or present), and both A and B are true (orpresent).

In addition, use of the “a” or “an” are employed to describe elementsand components of the embodiments herein. This is done merely forconvenience and to give a general sense of the description. Thisdescription, and the claims that follow, should be read to include oneor at least one and the singular also includes the plural unless it isobvious that it is meant otherwise.

The patent claims at the end of this patent application are not intendedto be construed under 35 U.S.C. § 112(f) unless traditionalmeans-plus-function language is expressly recited, such as “means for”or “step for” language being explicitly recited in the claim(s).

1. A computer-implemented method for manipulating and accessing ablockchain containing identity authentication information for bankingservices, the blockchain maintained by a network of participants, themethod comprising: receiving, at one or more processors, at least onebank transaction from at least one participant, wherein the at least onebank transaction is for at least one person and includes identity datafor the at least one person, and wherein the person is not one of theparticipants maintaining the blockchain; verifying, at the one or moreprocessors, the at least one bank transaction, wherein verifyingincludes verifying the identity data for the at least one person bychecking the identity authentication information contained in theblockchain for the identity data for the at least one person, whereinthe blockchain is stored in a component coupled to the one or moreprocessors; when the identity data is verified, communicating, via theone or more processors coupled with a network interface, a confirmationthat the at least one bank transaction is verified to the at least oneparticipant, adding, at the one or more processors, the bank transactionto a block of bank transactions; obtaining, via the one or moreprocessors coupled to the network interface, consensus regarding asolution to a cryptographic puzzle involving a cryptographic hash forthe block with at least one of the participants, and transmitting, viathe one or more processors coupled with the network interface, thesolution, and the block to at least one other participant based upon theconsensus; and when the identity data is not verified, communicating,via the one or more processors coupled with the network interface, thatthe at least one bank transaction is not verified to the at least one ofthe participants.
 2. The computer-implemented method of claim 1, whereinthe identity data includes personally identifiable information for theat least one person.
 3. The computer-implemented method of claim 1,wherein verifying the identity data includes checking, at the one ormore processors, an access level for the identity data prior to checkingthe identity authentication information contained in blockchain for theidentity data, wherein the access level is set by the at least oneperson.
 4. The computer-implemented method of claim 1, wherein verifyingthe at least one bank transaction further includes: checking, at the oneor more processors, a public-private key pair for the at least oneparticipant involved in the at least one bank transaction; and when thepublic-private key pair is invalid, not verifying the at least one banktransaction.
 5. The computer-implemented method of claim 1, wherein theblock of transactions has metadata, and further comprising generatingthe cryptographic hash by: generating, at the one or more processors, ahash of the metadata for the block of transactions; and adding, at theone or more processors, the hash for the metadata to the block of banktransactions.
 6. The computer-implemented method of claim 1, wherein thecryptographic puzzle has a difficulty assigned to it by a participant inthe blockchain network, a group of participants in the blockchainnetwork, an administrator of the blockchain network, or some combinationthereof.
 7. The computer-implemented method of claim 1, furthercomprising: when the identity data is not stored in the identityauthentication information contained in blockchain, verifying theidentity data, at the processor coupled to the network interface, bytransmitting a verification request for the identity data to at leastone other participant; and adding, via the one or more processors, whenthe identity data is verified by the at least one other participant, theidentity data to the identity authentication information contained inblockchain, and when the identity data is not verified, communicating arejection to the at least one participant.
 8. A computer-implementedmethod for accessing a blockchain for identity authentication forbanking services, the blockchain maintained by a network ofparticipants, the method comprising: receiving, at one or moreprocessors, at least one bank transaction from at least one participant,wherein the at least bank one transaction is for at least one person andincludes identity data for the at least one person, and wherein theperson is not one of the participants maintaining the blockchain;verifying, at the one or more processors, the at least one banktransaction, wherein verifying includes verifying the identity data forthe at least one person by checking, via the processor, the identityauthentication information contained in the blockchain for the identitydata for the at least one person, wherein the blockchain is stored in acomponent coupled to the one or more processors; when the identity datais verified, communicating, via the one or more processors coupled witha network interface, a confirmation that the at least one banktransaction is verified to the at least one participant, obtaining, viathe one or more processors coupled to the network interface, consensusregarding a solution to a cryptographic puzzle involving a cryptographichash for the block with at least one of the participants, andtransmitting, via the one or more processors coupled with the networkinterface, the solution, and the block to at least one other participantbased upon the consensus regarding the solution; and when the identitydata is not verified, communicating, via the one or more processorscoupled with the network interface, that the at least one banktransaction is not verified to the at least one participant.
 9. Thecomputer-implemented method of claim 8, wherein the identity dataincludes personally identifiable information for the at least oneperson.
 10. The computer-implemented method of claim 8, whereinverifying the identify data includes checking, at the one or moreprocessors, an access level for the identity data prior to checking theidentity authentication information contained in blockchain for theidentity data, wherein the access level is set by the at least oneperson.
 11. The computer-implemented method of claim 8, whereinverifying the at least one bank transaction further includes: checking,at the one or more processors, a public-private key pair for the atleast one participant involved in the at least one bank transaction; andwhen the public-private key pair is not valid, not verifying the atleast one bank transaction.
 12. The computer-implemented method of claim8, further comprising: receiving, at the one or more processors, a blockof transactions; and checking, at the one or more processors, a hash ofmetadata for the block of bank transactions.
 13. Thecomputer-implemented method of claim 12, further comprising when thehash of metadata for the block of bank transactions is valid, adding, atthe one or more processors, the block of bank transactions to theblockchain.
 14. A system for manipulating and accessing a blockchain foridentity authentication for banking services, the blockchain maintainedby a network of participants, the system comprising: a first componentconfigured to store non-transitory computer executable instructions; andone or more processors configured to interface with the first component,wherein the one or more processors are configured to execute thenon-transitory computer executable instructions to cause the system to:receive at least one bank transaction from at least one participant ofthe network of participants, wherein the at least bank one transactionis for at least one person and includes identity data for the at leastone person, and wherein the person is not one of the participantsmaintaining the blockchain; validate the at least one bank transaction,wherein validating includes validating the identity data for the atleast one person by checking the identity authentication informationcontained in the blockchain for the identity data for the at least oneperson, wherein the blockchain is stored in a second component coupledto the one or more processors; when the identity data is valid:communicate a confirmation that the at least one bank transaction isvalid to the at least one participant of the network of participants;add the bank transaction to a block of bank transactions; add the blockto the blockchain stored in the memory; obtain consensus regarding asolution to a cryptographic puzzle involving a cryptographic hash forthe block with at least one participant of the network of participants;and transmit the solution to cryptographic puzzle, and the block of banktransactions to at least one other participant of the network ofparticipants based upon the consensus; and when the identity data is notvalid, communicate that the at least one bank transaction is not validto the at least one participant of the network of participants.
 15. Thesystem of claim 14, wherein the identity data includes personallyidentifiable information for the at least one person.
 16. The system ofclaim 14, wherein the non-transitory computer executable instructions,when executed by the one or more processors, cause the system tovalidate the identity data by checking an access level for the identitydata prior to checking the blockchain for the identity data, wherein theaccess level is set by the at least one person.
 17. The system of claim14, wherein the non-transitory computer executable instructions, whenexecuted by the one or more processors, cause the system to validate theat least one bank transaction by: checking a public-private key pair forthe at least one participant involved in the at least one banktransaction; and when the public-private key pair is invalid, notvalidating the at least one bank transaction.
 18. The system of claim14, wherein the block of transactions has metadata, and wherein thenon-transitory computer executable instructions, when executed by theone or more processors, cause the system to generate the cryptographichash by: generating a hash of the metadata for the block oftransactions; and adding the hash for the metadata to the block of banktransactions.
 19. The system of claim 14, wherein the cryptographicpuzzle has a difficulty assigned to it by a participant in theblockchain network, a group of participants in the blockchain network,an administrator of the blockchain network, or some combination thereof.20. The system of claim 14, wherein the non-transitory computerexecutable instructions, when executed by the one or more processors,cause the system to: when the identity data is not stored in theidentity authentication information contained in blockchain, transmit averification request for the identity data to at least one otherparticipant; and add, when the identity is validated by the at least oneother participant, the identity data to the identity authenticationinformation contained in blockchain, and when the identity informationis not validated, communicate a rejection to the at least oneparticipant.